package bearworker.zxl.service;

import java.util.Map;

public interface DeliveryService {
	
	/**
	 * 获取寄件人（没有id的情况下获取默认寄件人）
	 * @param params
	 * @return
	 */
	Map<String, Object> getSender(Map<String,String> params);
	
	/**
	 * 获取寄件人列表，userId必传
	 * @param params
	 * @return
	 */
	Map<String, Object> getSenderList(Map<String,String> params);
	
	
	/**
	 * 删除寄件人
	 * @param params
	 * @return
	 */
	Map<String, Object> delDeliverySender(Map<String,String> params);
	
	/**
	 * 新增寄件人
	 * @param params
	 * @return
	 */
	Map<String, Object> insDeliverySender(Map<String,String> params);

	/**
	 * 更新寄件人信息（设置默认寄件人，删除寄件人信息）
	 * @param params
	 * @return
	 */
	Map<String, Object> updateDeliverySender(Map<String,String> params);
	
	
	/**
	 * 新增收件人信息
	 * @param params
	 * @return
	 */
	Map<String, Object> insDeliveryRecipient(Map<String,String> params);
	
	/**
	 * 获取收件人列表
	 * @param params
	 * @return
	 */
	Map<String, Object> getDeliveryRecipientList(Map<String,String> params);
	
	/**
	 * 获取收件人信息
	 * @param params
	 * @return
	 */
	Map<String, Object> getDeliveryRecipient(Map<String,String> params);
	
	/**
	 * 修改收件人信息
	 * @param params
	 * @return
	 */
	Map<String, Object> updDeliveryRecipient(Map<String,String> params);
	
	/**
	 * 删除收件人
	 * @param params
	 * @return
	 */
	Map<String, Object> delDeliveryRecipient(Map<String,String> params);
	
	
	/**
	 * 我的分享
	 * @param params
	 * @return
	 */
	Map<String, Object> deliveryShare(Map<String,String> params);
	
	/**
	 * 获取订单列表（我的订单）
	 * @param params
	 * @return
	 */
	Map<String, Object> getPersonalOrders(Map<String,String> params);

	/**
	 * 获取订单详情
	 * @param params
	 * @return
	 */
	Map<String, Object> getPersonalOrderDetail(Map<String,String> params);
	
	/**
	 * 我的包裹
	 * @param params
	 * @return
	 */
	Map<String, Object> getPersonalPackages(Map<String,String> params);
	
	/**
	 * 生成支付前的订单
	 * 插入预订单时，需要提前生成订单跟订单详情，状态插入0，当支付成功之后，状态修改为1
	 * @param params
	 * @return
	 */
	Map<String, Object> insPersonalOrderPre(Map<String,String> params);
	
	/**
	 * 生成支付成功后的订单
	 * @param params
	 * @return
	 */
	Map<String, Object> insPersonalOrder(Map<String,String> params);
	
	/**
	 * 获取物流信息
	 * @param params
	 * @return
	 */
	Map<String, Object> getLogistics(Map<String,String> params);
	
	/**(废弃)
	 * 获取openId跟UnionId
	 * @param params
	 * @return
	 */
	Map<String, Object> getOpenIdAndUnionId(Map<String,String> params);
	
	/**
	 * 保存用户信息
	 * @param params
	 * @return
	 */
	Map<String, Object> saveUserInfo(Map<String,String> params);
	
	/**
	 * 保存用户位置
	 * @param params
	 * @return
	 */
	Map<String, Object> insUserLocal(Map<String,String> params);
	
	/**
	 * 创建用户真实信息（实名认证）
	 * @param params
	 * @return
	 */
	Map<String, Object> insUserReal(Map<String,String> params);
	
	/**
	 * 获取用户真实信息
	 * @param params
	 * @return
	 */
	Map<String, Object> getUserReal(Map<String,String> params);
	
	/**
	 * 获取快递价格
	 * @param params
	 * @return
	 */
	Map<String, Object> getPackageFee(Map<String,String> params);

	/**
	 * 我的奖励
	 * @param params
	 * @return
	 */
	Map<String, Object> getUserReward(Map<String,String> params);
	
	/**
	 * 收快递功能
	 * @param params
	 * @return
	 */
	Map<String, Object> expressDelivery(Map<String,String> params);

	/**
	 * 获取发送地区
	 */
	Map<String,Object> getSendPlace(Map<String,String> params);

	/**
	 * 获取预订单
	 */
	Map<String, Object> getSenderOrdPre(Map<String, String> params);

	/**
	 * 删除预订单
	 */
	Map<String, Object> delPreOrder(Map<String, String> params);

	/**
	 * 支付通知
	 * @param params
	 * @return
	 */
	String paynotify(Map<String, String> params);

	/**
	 * 重新支付
	 * @param params
	 * @return
	 */
	Map<String, Object> rePay(Map<String, String> params);

	/**
	 * 获取分享链接
	 */
	Map<String, Object> getShareUrl(Map<String, String> params);

	/**
	 * 获取待取订单
	 * @param params
	 * @return
	 */
	Map<String, Object> getWaitOrds(Map<String, String> params);

	Map<String, Object> getWaitOrdDtls(Map<String, String> params);
}
